import java.util.ArrayList;
import java.util.Scanner;

/**
 * 题目要求我们把n堆高度不同的积木分成n堆高度相同的积木，假设我们面前真的有这样一堆积木，应该怎么做才能划分均等呢？
 * 第一步：我们需要数清每一摞积木的数量，把他们的总数相加，这样我们就知道积木的总数量，再把得到的结果除以n, 就得到了在高度相同的情况下，每一摞积木的块数。
 * 第二步：对于超过平均值的积木，计算当前的积木数量和平均值的差值，把多的积木数量移到缺少的部分，直到积木高度相同。
 */
public class Main7 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // 多组测试数据
        while (scanner.hasNext()){
            Integer size = scanner.nextInt();  // 定义数组长度
            if (size == 0){
                break;              // 0 代表退出
            }
            ArrayList<Integer> arrayList = new ArrayList<>();  // 定义arrayList 接收输入的每个积木的数量
            Integer sum = 0 ;  // 计算每摞积木数量加一起的数量
            for (int i = 0; i < size; i++) {
                int num = scanner.nextInt();  // 接受输入的每个积木的数量 累加
                sum += num;
                arrayList.add(num);  // 输入的每摞积木数量放进数组
            }
            Integer averageNum = sum / size;  // 计算 每摞积木应有的平均数量
            Integer res = 0;   // 移动次数
            for (int i = 0; i < arrayList.size(); i++) {
                if (arrayList.get(i) > averageNum){
                    res += arrayList.get(i) - averageNum;
                }
            }
            System.out.println(res);
            System.out.println();

        }
    }
}